package cn.iocoder.yudao.module.jifenyuan.convert.roomuserbind;

import java.util.*;

import cn.iocoder.yudao.framework.common.pojo.PageResult;

import cn.iocoder.yudao.module.jifenyuan.controller.admin.roomuserbind.vo.RoomUserBindCreateReqVO;
import cn.iocoder.yudao.module.jifenyuan.controller.admin.roomuserbind.vo.RoomUserBindPageReqVO;
import cn.iocoder.yudao.module.jifenyuan.controller.admin.roomuserbind.vo.RoomUserBindUpdateReqVO;
import cn.iocoder.yudao.module.jifenyuan.dal.dataobject.roomuserbind.RoomUserBindWithInfoDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import cn.iocoder.yudao.module.jifenyuan.controller.app.roomuserbind.vo.*;
import cn.iocoder.yudao.module.jifenyuan.dal.dataobject.roomuserbind.RoomUserBindDO;

/**
 * 记分员 房间与成员绑定 Convert
 *
 * @author 芋道源码
 */
@Mapper
public interface RoomUserBindConvert {

    RoomUserBindConvert INSTANCE = Mappers.getMapper(RoomUserBindConvert.class);

    RoomUserBindDO convert(AppRoomUserBindCreateReqVO bean);

    RoomUserBindDO convert(AppRoomUserBindUpdateReqVO bean);
    AppRoomUserBindUpdateReqVO convert(RoomUserBindUpdateReqVO bean);
    AppRoomUserBindCreateReqVO convert(RoomUserBindCreateReqVO bean);
    AppRoomUserBindPageReqVO convert(RoomUserBindPageReqVO bean);

    AppRoomUserBindRespVO convert(RoomUserBindDO bean);

    List<AppRoomUserBindRespVO> convertList(List<RoomUserBindDO> list);
    List<AppRoomUserBindWithInfoRespVO> convertList1(List<RoomUserBindDO> list);

    PageResult<AppRoomUserBindRespVO> convertPage(PageResult<RoomUserBindDO> page);

    List<AppRoomUserBindExcelVO> convertList02(List<RoomUserBindDO> list);
    List<RoomUserBindWithInfoDO> convertList03(List<RoomUserBindDO> list);
    List<AppRoomUserBindWithInfoRespVO> convertList04(List<RoomUserBindWithInfoDO> list);

}
